The present invention relates generally to systems using program scheduling information and, more particularly, to methods, systems, interfaces, software, and signals for selecting programs and determining whether to schedule an event based on comparing the selected program name to the program scheduling information.
Program scheduling information is used extensively with TVs, VCRs, Convergence PCs, PC/TVs, and set top boxes for cable TVs to display scheduling information for a multitude of programs. As an example, the Gateway Destination PC-TV system from Gateway 2000, Inc. integrates a computer system with a TV and other devices and signals associated with TVs such as video cassette recorders (VCRs), audio components, laser disk drives, cable television signals, and satellite signals. Typically, scheduling information is transmitted by a service to a receiver contained in one of the aforementioned systems. The scheduling information can be contained within a carrier signal and the carrier signal transmitted, or propagated, through several different mediums. For example, the signal could propagate through air until it is received by a local satellite dish, whereupon it is transferred through a fiber optic cable to one of the above systems. The scheduling information received by the one of the mentioned systems typically contains information like a program name, day, date and time the program airs, the rating of the program, and even if the program is closed captioned for the hearing impaired. Additionally, the scheduling information could contain a summary describing the program and whether the program is available with foreign language subtitles. The above information, and potentially even more, is available to the viewer using program scheduling information in conjunction with one of the above systems.
A common use of program scheduling information with one of the above systems is to select a program and schedule an event in association with the selected program. Two common events are record and remind events. The record event uses a record function and the program scheduling information associated with a selected program to perform a record function. The record function allows the user to record a program at a future date using the selected program""s information contained within the program scheduling information (i.e., channel, date, duration, etc.). The remind event allows the user to be reminded of a program that is about to air using the program scheduling information. The remind event uses a remind function and the program scheduling information associated with the selected program to perform a remind function. By selecting a program and scheduling an event in association with the program, the task of scheduling an event is greatly simplified.
As an example, suppose a user wanted to record a program that airs on a future date. The user would select a program and schedule a record event to record the program. Upon scheduling the record event, the record event will automatically be performed when the selected program airs on the future date. The task of recording a program is simplified in that the program scheduling information associated with the selected program is used to assist in scheduling the record event. The scheduling of a record event is analogous to the method used in manually programming a VCR to record a program on a future date, except in the case of scheduling a record event, all of the information for programming the VCR is contained in the program scheduling information associated with the selected program and is automatically contained in the scheduled event requiring minimal effort by the user. The remind event is similar to the record event except that when the selected program is about to air, the user would receive a reminder from the system instead of having the system actually recording the program.
Similar to record and remind events are periodically recurring record and remind events. Periodically recurring record and remind events are extensions of the record and remind events with the added feature of being able to record or remind at different recurring periodic intervals (i.e. daily, weekly). These periodically recurring events are useful for recording and reminding programs that air on a daily or weekly basis. For example, suppose a user wanted to schedule a weekly record event to record a program on a weekly basis. The user would select the desired program and then elect to have a weekly record event record the desired program on a weekly basis. The program would be automatically recorded every week in the same time slot until the user terminates the weekly record event. The weekly remind event is performed in a similar manner to the weekly record event except that instead of recording the program weekly, the user would be reminded weekly prior to the program airing that the program is about to air.
Several problems arise when a user xe2x80x9cblindlyxe2x80x9d schedules a periodic event. The first problem that can occur is when a user sets up an event for recording/reminding a program on a weekly basis and the program is recorded/reminded regardless of what is actually being aired. As an example, suppose NBC""s Seinfeld (NBC and Seinfeld are trademarks of the National Broadcast Company) is aired every Thursday from 8:00-8:30 P.M. CST, and the user decided to record the program by scheduling a weekly record event. By scheduling a weekly record event, the user has requested that the Seinfeld show be recorded every week in the same time slot, Thursdays between 8:00-8:30 P.M. CST as noted. However, suppose in one particular week when the time slot arrived, Seinfeld was replaced with live coverage of the Winter Olympics. A conflict occurs between what the user scheduled to be recorded and what is actually recorded. In this case, the user may possibly get a recording of the xe2x80x9cTwo-Man Bobsledding Eventxe2x80x9d and not the desired Seinfeld program (not that there is anything wrong with that, it just is not quite what the user had in mind).
A second problem may occur when the user wants to schedule a periodic event on a weekly basis, but the program may be either preceded by a special announcement or a program in the previous time slot that aired beyond the normal scheduled time slot. For example, suppose the user wants to record NBC""s Frasier (Frasier is a trademark of the National Broadcast Company) every Wednesday night from 7:30-8:00 P.M. CST and elects to record the event automatically on a weekly basis by scheduling a weekly record event. Also, suppose that during one week on a Wednesday night the program time had slipped from 7:30-8:00 P.M. to 9:30-10:00 P.M. CST due to the President""s xe2x80x9cState of the Union Address.xe2x80x9d The recording of the Frasier program would be missed by the interrupting program, and the user would record the xe2x80x9cState of the Union Addressxe2x80x9d (and possibly the rebuttal) instead of the desired Frasier program.
Both situations are unappealing to the user wanting to record or remind specific programs on a regular basis and avoid the recording/reminding of undesired programs due to schedule changes. What is needed is a method, system, interface, software, and signal to identify the program names of the programs being aired and to schedule events or reschedule events based on a determination of whether the name of the selected program is in the predetermined time slot of the program scheduling information.
Accordingly, the present invention provides a method in a system using program scheduling information, comprising the steps of selecting a program from the program scheduling information, comparing a program name for the selected program to the program scheduling information, and determining whether to schedule at least one event for the program for at least one predetermined time slot based upon the results of comparing the program name for the selected program to the program scheduling information.
In a preferred embodiment, the program name is used as a xe2x80x9ctagxe2x80x9d which provides the basis for comparisons and determinations. However, it is understood that any unique tag, such as a program identification number, may be used in place of the program name when practicing this invention. For example, if the name of a program is xe2x80x9cSeinfeldxe2x80x9d and this program""s identification number is xe2x80x9c12345xe2x80x9d, then the present invention may be modified to compare the desired identification number to the actually scheduled identification number, rather than conducting a comparison based solely upon the program name.
The present invention further provides a system comprising: at least one processor; memory operably coupled to the processor; and a user interface, including program scheduling information, configured to enable selection of a program from the program scheduling information, to compare a program name for the selected program to the program scheduling information, and to determine whether to schedule at least one event for the program for at least one predetermined time slot based upon the results of comparing the program name for the selected program to the program scheduling information.
The present invention further provides a computer readable medium tangibly embodying a program of instructions for a system using program scheduling information. The program of instructions implements the steps of selecting a program from the program scheduling information, comparing a program name for the selected program to the program scheduling information, and determining whether to schedule at least one event for the program for at least one predetermined time slot based upon the results of comparing the program name for the selected program to the program scheduling information.
The present invention further provides a signal embodied in a propagation medium in a system using program scheduling information. The signal comprises at least one instruction configured to select a program from the program scheduling information, at least one instruction configured to compare a program name for the selected program to the program scheduling information, and at least one instruction configured to determine whether to schedule at least one event for the program for at least one predetermined time slot based upon the results of comparing the program name for the selected program to the program scheduling information.
It is an object of the present invention to schedule an event based on the program name contained within the program scheduling information.
It is another object of the present invention to reschedule an event to a new time slot based on a determination that the program name is in the new time slot.
It is another object of the present invention to cancel a scheduled event based on comparing the program name to the program scheduling information.
It is another object of the present invention to notify a user of the system that a program has been canceled and/or rescheduled.
One advantage that the present invention provides is that an event will be scheduled after determining whether the program name is in the predetermined time slot of the selected program.
Another advantage that the present invention provides is that a scheduled event will be canceled if the program name does not match the program name in the program scheduling information.
Another advantage that the present invention provides is that a scheduled event can be automatically rescheduled to a different time slot using the program scheduling information.
Another advantage that the present invention provides is that resources will not be wasted to schedule and/or execute an event for a selected program not airing in its predetermined time slot.